From 1a2274e7be388f6e1bf47dedf4f3e02c6c508e8d Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 30 Jan 2007 18:36:44 +0000 Subject: [PATCH] Be more careful about toplevel possibly being NULL. (#402453, Sebastian 2007-01-30 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop): (gdk_x11_window_set_user_time): Be more careful about toplevel possibly being NULL. (#402453, Sebastian Bacher) svn path=/trunk/; revision=17236 --- ChangeLog | 6 ++++++ gdk/x11/gdkwindow-x11.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 22060e4121..a1a1dc0205 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-01-30 Matthias Clasen + + * gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop): + (gdk_x11_window_set_user_time): Be more careful about toplevel + possibly being NULL. (#402453, Sebastian Bacher) + Tue Jan 30 12:09:56 2007 Tim Janik * gtk/gtksettings.c: cleaned up ::color-hash registration to not abuse diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c index 719ba01618..39b46a70a5 100644 --- a/gdk/x11/gdkwindow-x11.c +++ b/gdk/x11/gdkwindow-x11.c @@ -2020,6 +2020,10 @@ void gdk_x11_window_move_to_current_desktop (GdkWindow *window) { GdkToplevelX11 *toplevel; + + g_return_if_fail (GDK_IS_WINDOW (window)); + g_return_if_fail (GDK_WINDOW_TYPE (window) != GDK_WINDOW_CHILD); + toplevel = _gdk_x11_window_get_toplevel (window); if (toplevel->on_all_desktops) @@ -3785,6 +3789,7 @@ gdk_window_add_colormap_windows (GdkWindow *window) if (GDK_WINDOW_DESTROYED (window)) return; + toplevel = gdk_window_get_toplevel (window); old_windows = NULL; @@ -4236,7 +4241,8 @@ gdk_x11_window_set_user_time (GdkWindow *window, if (timestamp_long != GDK_CURRENT_TIME) display_x11->user_time = timestamp_long; - toplevel->user_time = timestamp_long; + if (toplevel) + toplevel->user_time = timestamp_long; } #define GDK_SELECTION_MAX_SIZE(display) \ -- 2.30.2